#include <my_header.h>
/*Usage:./04_cpmfile src dest  */
int main(int argc, char *argv[]){
    //传入命令参数判断
    ARGS_CHECK(argc,3);
    //开启src文件流 ，他作为复制文件只需要读取
    int fds = open(argv[1],O_RDONLY);
    ERROR_CHECK(fds, -1,"open src");
    int fdd = open(argv[2],O_RDWR | O_CREAT | O_TRUNC, 0666);
    //复制文件需要找到路径要读取存储位置所以要开启读权限
    //故对于目标文件来说要可读可写
    ERROR_CHECK(fdd, -1, "open dest");
    char buf[1024] = { 0 };
    //设置缓存数组用来当做数据的复制的中转站
    //读一段写一段读取1024个字节，假设就是文件就只有1024最大
    ssize_t sret = read(fds, buf, sizeof(buf) - 1);
    // write(fdd, buf, sizeof(buf) - 1); 这里写法不太好
    // 最好是读多少个写多少个所以应该写入的是sret个字节
    write(fdd, buf, sret);

    //关闭两个文件的文件流
    close(fds);
    close(fdd);
    return 0;
}


